package edu.java基础;
import java.util.Scanner;

public class H_switch语句 {
    /*switch中
    * case 后的标签不能重复
    * case 后面给出的值只能是常量不能是变量
    *
    * */
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入今天是星期几：");
        int week = sc.nextInt();
        switch (week){
            //多情况判断可以用switch语句
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期日");
                break;
            default:  //可以用来处理意料外的数值，可以省略但不建议，相当于else
                System.out.println("数据有误");
                break;

        }
        //case穿透现象
        //如果switch语句中省略了break语句，就会开始case穿透
        //穿透时后续case不会具有匹配效果，内部语句都会执行，直到看见break或者switch整体执行完毕，才会结束
        /*键盘输入1-7作为星期数，输出工作日还是星期日
         1-5：工作日    6-7：星期日*/
        Scanner sc1 = new Scanner(System.in);
        System.out.println("请输入：1——7");
        int week1 = sc1.nextInt();
        switch (week1){
           /* case 1:
                System.out.println("工作日");
            //    break;
            case 2:
                System.out.println("工作日");
                break;
            case 3:
                System.out.println("工作日");
                break;
            case 4:
                System.out.println("工作日");
                break;
            case 5:
                System.out.println("工作日");
                break;
            case 6:
                System.out.println("休息日");
                break;
            case 7:
                System.out.println("休息日");
                break;*/

            //switch语句中多个case给出的语句体出现重复时，可以考虑case穿透优化
            case 1:
            case 2:
            case 3:
            case 4:
            case 5:
                System.out.println("工作日");
                break;
            case 6:
            case 7:
                System.out.println("休息日");
                break;
            default:
                System.out.println("输入有误");
        }

    }
}
